package com.molichuxing.services.infrastructure.dto.response;

import java.time.LocalDateTime;

import com.molichuxing.framework.dto.RootDto;
import com.molichuxing.services.property.GztIdverifyVerifyResultEnum;

import lombok.Data;
import lombok.EqualsAndHashCode;

@Data
@EqualsAndHashCode(callSuper = true)
public class GztIdverifyNotifyLogDto extends RootDto {
    /**
     * 主键 id
     */
    private Integer id;

    /**
     * 身份验证请求id request_id
     */
    private Integer requestId;

    /**
     * 返回结果值 result
     */
    private String resultMessage;

    /**
     * 对比服务交易编号 transaction_id
     */
    private String transactionId;

    /**
     * 身份信息核验结果 1 库中无此号 2 不一致 3 一致 4 核查失败 user_check_result
     */
    private String userCheckResult;
    
    /**
     * 身份信息核验结果 1 库中无此号 2 不一致 3 一致 4 核查失败 user_check_result
     */
    private String userCheckResultStr;
    
    /**
     * 对比结果(0示认为是同一个人 ;1表示认为不是同一个人) verify_result
     */
    private String verifyResult;

    /**
     * 对比结果(0示认为是同一个人 ;1表示认为不是同一个人) verify_result
     */
    private String verifyResultStr;

    /**
     * 对比相似值 分数取值范围 0 – 100, 值越大越相似 verify_similarity
     */
    private String verifySimilarity;

    /**
     * 请求时间
     */
    private LocalDateTime requestTime;

    /**
     * 用户真实姓名
     */
    private String realName;
    
    /**
     * 身份证号
     */
    private String idNumber;

    /**
     * third_gzt_idverify_notify_log
     */
    private static final long serialVersionUID = 1L;

    
    public void setUserCheckResult(String userCheckResult) {
    	this.userCheckResult=userCheckResult;
    	this.userCheckResultStr= userCheckResult==null ? null : GztIdverifyVerifyResultEnum.getName(userCheckResult);
    }
    
    public void setVerifyResult(String verifyResult) {
    	this.verifyResult=verifyResult;
    	this.verifyResultStr= verifyResult==null ? null : GztIdverifyVerifyResultEnum.getName(verifyResult);
    }
   
}